package cn.xi.goods.service;

import cn.xi.pojo.Goods;
import cn.xi.pojo.Spu;

import com.github.pagehelper.Page;

import java.util.List;
import java.util.Map;

public interface SpuService {

    /***
     * 查询所有
     * @return
     */
    List<Spu> findAll();

    /**
     * 根据ID查询
     * @param id
     * @return
     */
    Spu findById(String id);

    /***
     * 新增
     * @param goods
     */
    void add(Goods goods  );

    /***
     * 修改
     * @param goods
     */
    void update(  Goods goods);

    /***
     * 逻辑删除
     * @param id
     */
    void delete(String id);

    /***
     * 多条件搜索
     * @param searchMap
     * @return
     */
    List<Spu> findList(Map<String, Object> searchMap);

    /***
     * 分页查询
     * @param page
     * @param size
     * @return
     */
    Page<Spu> findPage(int page, int size);

    /***
     * 多条件分页查询
     * @param searchMap
     * @param page
     * @param size
     * @return
     */
    Page<Spu> findPage(Map<String, Object> searchMap, int page, int size);

    //    根据id查询spu和sku
    Goods findGoodsById(String id);

//    审核商品
void shenHe(String id);
//下架商品
void xiaJia(String id);
//上架商品
void shangJia(String id);

//商品还原
    void noDelete(String id);

    //物理删除商品
    void deleteYes(String id);

}
